Computer-based automatic detection of an object touching a reference surface and/or determination of positional information (e.g., a coordinate in space) or motional information (e.g., velocity, acceleration) of the object finds a lot of applications in human-computer interactive entertainment and consumer electronics. In one such application, an interactive projection system for providing a display that interacts with a user is required to determine if a finger tip of the user touches a pre-defined region of a screen, in order that the interactive projection system receives user inputs. In another such application related to computer entertainment, the velocity of a user's finger striking a surface is used by a game to predict if the user is decisive or hesitant in providing an input to the game.
To determine positional or motional information of the object, including information of whether the object touches the reference surface, it is required to obtain the object's height above the reference surface by an optical technique. In China Patent Application Publication No. 1,477,478, it is disclosed a device that detects a height of a finger above a touch surface for determining if the finger touches the touch surface. The disclosed device uses two image sensors, i.e. two cameras, for detection. Using two cameras instead of one camera has practical disadvantages in making a product such as higher cost and more space needed to house the two cameras in the product.
It is desirable to use one camera only. Under this condition, there is a possibility that the object's height above the reference surface can be estimated from the shadow's size after an image of the shadow is captured by the camera. However, FIG. 1 provides two examples to illustrate that objects having different heights above a reference surface, under certain conditions, can produce shadows that are substantially-similar in size. Example 1 considers a projector-camera arrangement based on a system disclosed in US Patent Application Publication No. 2007/201,863 for detecting if a finger touches a surface. In Example 1, a projector 110 projects light along a vertical direction onto a reference surface 117 while a camera 115 captures a view of a shadow 130 from a direction shifted from the vertical direction for estimation of an object's height above the reference surface 117. The shadow 130 may be produced by either a first object 120a or a second object 120b, both having different heights above the reference surface 117. Example 2 is related to a projector-camera arrangement according to U.S. Pat. No. 6,177,682 for determining a height of an object mounted on a surface. In Example 2, an overhead camera 165 captures a view of a shadow 180 produced from light obliquely projected by a projector 160 onto a reference surface 167. Again, it is apparent that the shadow 180 may be produced by different objects 170a, 170b, 170c having different heights above the reference surface 167. In particular, the object 107c touches the reference surface 167 whereas the other objects 107a, 107b do not. As a result, it does not lead to a unique solution to the object's height above a reference surface.
There is a need in the art for unambiguous estimation of a height of an object above a reference surface by using a single camera. Positional or motional information of the object can be obtained thereafter.